use std::fmt::Debug;

fn print_it(input: impl Debug + 'static) {
    println!("'static value passed in  is : {:?}", input);
}

fn main() {
    // i is owned and contains no references, thus it's 'static:
    let i = 4;
    print_it(i);
    // oops, &i only has the lifetime by the scope of main(), so it's not 'static:
    print_it(&i);
}